#ifndef NLYRICLABEL_H
#define NLYRICLABEL_H
#include <QtWidgets>


class NLyricLabel : public QLabel{

public:
    NLyricLabel(int MaxVsb = 11,
                  int VerticalSpacing = 4,
                  std::pair<QFont, QFont> OptionFont = std::make_pair(QFont("KaiTi_GB2312", 14), QFont("KaiTi_GB2312", 15)),
                  std::pair<QColor, QColor> OptionColor = std::make_pair(QColor(qRgb(130,160,100)), QColor(qRgb(198,92,92))),
                  QWidget *parent = nullptr);



void setLyricMap(QMap<QString, QString> LyricMap);


void resizeEvent(QResizeEvent *Event);


void setFont(std::pair<QFont, QFont> OptionFont);


void setColor(std::pair<QColor, QColor> OptionColor);


void setText(QString Text);


void paintEvent(QPaintEvent *Event);


private:
    QMap<QString, int> RdoMap_Integer;
    QMap<QString, QString> RdoMap_String;
    QMap<QString, bool> RdoMap_Bool;
    QMap<QString, QFont> RdoMap_Font;
    QMap<QString, QColor> RdoMap_Color;
    QMap<QString, QMap<QString, QString>> RdoMap_Map;
    QMap<QString, QList<QString>> RdoMap_List;
};
#endif
